package com.xqboss.apps.dto.equipment;


import com.xqboss.apps.domain.equipment.EquipmentUpgradeConfigBreak;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 装备升级加点-配置
 *
 * @author wangcong
 * @date 2023-11-23
 */
@Data
@ApiModel("装备升级加点-配置")
public class EquipmentUpgradeConfigDto {

    @ApiModelProperty("主键id")
    private Long id;

    @ApiModelProperty("藏品名称")
    private String collectionName;

    @ApiModelProperty("装备升级加点模版id")
    private Long upgradeTemplateId;

    @ApiModelProperty("最小等级")
    private Integer minLevel;

    @ApiModelProperty("最大等级")
    private Integer maxLevel;

    @ApiModelProperty("最大属性加点")
    private Integer attribute;

    @ApiModelProperty("升级最低经验比例")
    private BigDecimal minExpRatio;

    @ApiModelProperty("天赋折算系数")
    private BigDecimal talentCoefficient;

    @ApiModelProperty("破损保底系数")
    private BigDecimal breakageGuarantee;

    @ApiModelProperty("热豆最小平衡系数")
    private BigDecimal integralMinRatio;

    @ApiModelProperty("热豆最大平衡系数")
    private BigDecimal integralMaxRatio;

    @ApiModelProperty("最小消耗热豆")
    private BigDecimal integralMinExp;

    @ApiModelProperty("检测持仓")
    private Boolean detectHold;

    @ApiModelProperty("检测藏品id")
    private Long detectNftId;

    @ApiModelProperty("瑕疵概率")
    private List<EquipmentUpgradeConfigCoefficientDto> blemishCoefficient;

    @ApiModelProperty("破损修复")
    private List<EquipmentUpgradeConfigCoefficientDto> breakageCoefficient;

    //=================== v1.9.0突破升级迭代新增字段 ===================
    @ApiModelProperty("升级模式1开关")
    private Boolean modeOneEnable;

    @ApiModelProperty("升级模式2开关")
    private Boolean modeTwoEnable;

    @ApiModelProperty("突破消耗热豆")
    private BigDecimal breakHotBeans;

//    @ApiModelProperty("突破消耗材料id")
//    private Long breakMaterialId;

    @ApiModelProperty("突破保底次数")
    private Integer breakProtectNum;

    @ApiModelProperty("突破成功概率")
    private BigDecimal breakSuccessRatio;

    @ApiModelProperty("进化热豆消耗系数")
    private BigDecimal evolveHotBeansRatio;

    @ApiModelProperty("突破材料")
    private List<EquipmentUpgradeConfigBreak> breakMaterials;
}